home *** CD-ROM | disk | FTP | other *** search
-
- ___
- __ __ __ _ /|
- ||\ |\ ||\ ||\ | /\/ | The Manual System (Yet Another... but Better!)
- || \| \ || \ || \ | / \
- || \ \||==\|| \ | \ / Release 37.9 [first public] - 04 February 1995
- || \ \| \| \| \/ Copyright 1995 Ben R. Kennedy; all rights reserved!
-
-
-
- BRIEF TABLE OF CONTENTS
- =======================
-
- 1. About this documentation
- 2. What is MAN? How come?
- 3. Installation & Using it
- 4. Neat features & config notes
- 5. Creating/modifying man pages
- 6. Internal format for MAN pages
- 7. How to contact me
-
- NOTE: MAN IS FREEWARE. That means that you are free to use and to distribute
- it to whomever you please, so long as this archive remains more or less intact
- and that no charge is levied for my work!
-
-
- 1. ABOUT THIS DOCUMENTATION
- ---------------------------
-
- The doc file you are reading now is fairly brief; I currently suffer from a
- semi-moderate case of Too Busy Schedulitis so will write more complete docs
- as time (and interest) warrant!
-
- This as you have deduced is a plain old ascii doc (not a man page). However,
- individual man pages for the included utilities can be found in the man/
- dir of this archive, along with their "mandoc" counterparts. See these for
- detailed info.
-
-
- 2. WHAT IS MAN? HOW COME?
- --------------------------
-
- The Manual System (MAN) is supposed to provide an easy way for finding and
- referring to computer-related documentation, such as C function autodocs and
- reference, shell commands, reference tables, and so on. The purpose is pretty
- much the same as that for the Unix original: to eliminate (or serve as a
- complement to) cumbersome manuals and piles of paper!
-
- I was motivated to write my own MAN system in December/94 after I became tired
- of having to fire up AmigaGuide (and 730 k of docs) to look up a simple proto
- for a function or two when programming. It occurred to me that if I could
- simply type "man fseek" and be provided with complete info for that function,
- so much time and effort would be saved!
-
- As I am aware there are a couple other MAN type things on Aminet, and this one
- isn't meant as competition or replacement for them (I haven't even used
- another). I wrote it however to serve my immediate needs, and with the intent-
- tion of making it as portable and flexible as possible; therefore, I see no
- reason why it could not come to serve all needs. Read on :-)
-
-
- 3. INSTALLATION & USING IT
- --------------------------
-
- To install everything: take a look at the install.sh batch file and make
- sure you know what's going on (make any site-specific changes if needed), then
- run it -- it will install what's here. Don't forget to add an ASSIGN to your
- user-startup manually!
-
- There are a few programs included in the bin/ dir of this archive (yeah, I
- like Unix names). Their purposes are as follows:
-
- man - the MAN-page viewer and formatting client.
- doc2man - converts text files into MAN-format manual pages.
- man2doc - reverts MAN-format pages into ascii editable docs.
- guide2man - converts SAS/C AmigaGuide help to MAN pages.
-
- For detailed instructions on each command, please take a look at their indivi-
- dual manual pages or doc files. If installed, just type "man <programname>"!
-
-
- 4. NEAT FEATURES & CONFIG NOTES
- -------------------------------
-
- MAN relies on the "more" utility to be present in the search path to page its
- converted files to the screen. This allows customization of the paging
- routine if so desired. At present, the util name is not changeable.
-
- MAN will test the existence of an environment variable (local OR global)
- called "console_width" for the width of your window, in columns. Use this
- to overried the default setting of a regular 80-col screen. This determines
- how wide to format the text.
-
- MAN will automatically justify text and format paragraphs based on the environ-
- ment... no special considerations needed when writing the man page!
-
-
- 5. CREATING/MODIFYING MAN PAGES
- -------------------------------
-
- It is easiest if you take a look at the supplied <foo>.doc files to get an
- idea of the format for "mandoc" (ascii format interpretable by man2doc) files.
- To write a manual page for something has been made as easy as possible with
- the intelligent doc2man utility; a doc can be typed by a human and then easily
- converted into an encoded manpage format!
-
- To modify an existing man page, simply extract the text to an editable "mandoc"
- format with man2doc util, edit it to your preference, and then re-encode it
- with doc2man.
-
- The SAS/C AmigaGuide help files on the C function library can be broken down
- into individual man pages (about 400 files, total about 460 kb) by using the
- special guide2man util -- see its man page for info.
-
-
- 6. INTERNAL FORMAT FOR MAN PAGES
- --------------------------------
-
- Following is a brief description of the MAN file format, of interest to progr-
- ammers writing their own supplementary utils, or merely interested in picking
- things apart :-)
-
- First longword: identifying string; MAN%c where %c is a version identifier.
- Next, any other header info terminated by a NULL (at present, none, i.e. just
- a '\0' byte).
-
- Following this is the actual body of the file. It is broken into subsections,
- each of which starts with a byte indentifying its type (e.g. 'D' = descrip,
- 'S' = synopsis, and so on). After this byte comes the contents of the section
- terminated by a NULL. Paragraphs should contain '\n' only at end, since MAN
- will automatically justify and break lines accordingly.
-
- The file ends with another NULL byte (i.e. a subsection identifier of '\0').
-
-
- 7. HOW TO CONTACT ME
- --------------------
-
- First I'd like to say: please do contact me if you have any suggestions or bug
- reports. I will also consider releasing source code to anyone interested in
- either improving it, or simply how it works. I'd like my efforts to be of use
- to others.
-
- Paper: Ben Kennedy, PO Box 152, Deep River Ontario, Canada K0J 1P0.
- Email: aw785@freenet.carleton.ca
- Phone: +1-613-584-1587 Fax and BBS (autodetect): +1-613-584-1426.
-
-
- That's it for now... hope you find this program useful.
-
- Also a quick greet to Charlotte, one special girl for whom
- I'll never meet a perfect alternate. ILY Tanda...
-
-
- ...ben, February 1995
-
-
-